curl_copy_handle
复制一个cURL句柄和它的所有选项
该函数自 PHP 5.1.0 版本起支持。
curl_copy_handle 函数用于创建一个新的 cURL 会话句柄,它复制了原始 cURL 句柄的所有设置和选项。该函数通常用于将当前 cURL 会话的设置复制到一个新的会话句柄中,允许多个会话共享相同的配置而不需要重复设置。
curl_copy_handle(resource $ch): resource
该函数只有一个参数:
成功时,返回一个新的 cURL 会话句柄(资源类型),可以继续使用新的句柄进行操作。
如果发生错误,返回 FALSE。
以下是一个使用 curl_copy_handle 函数的简单示例:
<?php // 初始化第一个 cURL 会话 $ch1 = curl_init(); curl_setopt($ch1, CURLOPT_URL, "https://www.example.com"); curl_setopt($ch1, CURLOPT_RETURNTRANSFER, true); // 复制第一个 cURL 会话句柄 $ch2 = curl_copy_handle($ch1); // 执行第一个 cURL 会话 $response1 = curl_exec($ch1); // 执行第二个 cURL 会话 $response2 = curl_exec($ch2); // 输出两个会话的响应内容 echo "Response 1: " . $response1 . "\n"; echo "Response 2: " . $response2 . "\n"; // 关闭 cURL 会话 curl_close($ch1); curl_close($ch2); ?>
在这个示例中,我们首先初始化了一个 cURL 会话句柄 $ch1,并设置了它的请求 URL 和返回数据的选项。然后,使用 curl_copy_handle 函数复制了这个句柄,创建了一个新的句柄 $ch2,它共享了原始句柄的设置。接下来,执行了两个 cURL 请求并输出了它们的响应内容。最后,关闭了两个 cURL 会话。